#pragma once 
#include <cstddef>
#include<string>
#include<regex>
#include<unordered_map>


namespace muduo{
    class HttpResponse{
    public:
        int _statu;
        std::string _body;
        bool _redirect_flag;
        std::string _redirect_url;
        std::unordered_map<std::string, std::string> _header;
    public:
        HttpResponse();
        HttpResponse(int status);
        void Reset();
        void SetBody(const std::string& body);
        void SetHeader(const std::string& key, const std::string& val);           //插入请求头
        std::string GetHeader(const std::string& key);    //获得指定头部字段的值
        bool HasHeader(const std::string& key);           //判断是否有指定头部字段的值
        void SetContent(const std::string &body,const std::string& type);   //设置正文内容与正文类型（正文类型在头部中）
        void SetRedirect(const std::string& url,int statu); //设置重定向的url地址与重定向状态码(如临时重定型302，永久重定向301)
        bool Close();
    };
}